"""
面试题:
1.is与==的区别?
    == 判断值是否相等
is比较的是内存地址是否相等
id()----->显式变量的内存地址
2. 深拷贝与浅拷贝的区别?
浅拷贝: 来自于copy模块中的copy方法,只拷贝对象的第一层,不拷贝对象内部的子对象
深拷贝:来自于copy模块中的deepcopy方法,拷贝对象的所有的数据,包括子对象
=:是赋值,把值跟内存地址一起给新的变量  (知道就可以了)
3. 有没有写过排序算法?
    写过
冒泡排序是一种最基础的交换排序，是将列表中的相邻元素，
从左到右依次进行比较，较大的往右移，比较完后列表中最后一个元素就是最大的，
除去这个元素，从剩下的列表中再重复以上操作，直到所有元素排序完成。

"""
import copy

# list1=[1,2,3]
# list2=[1,2,3]
# print("==:",list1==list2)
# print(id(list1))
# print(id(list2))
# print("is:",list1 is list2)

# 2.拷贝
# list2=list1[3]
# list2[0]
# # 简写
# list1[3][2]
# list1=[1,2,3,["张三","李四","王五"]]
# print("修改前list1:",list1)
# list2=copy.deepcopy(list1)
# list2[3][0]="赵六"
# print("修改后list1:",list1)
# #
# print("list2",list2)
# list1=[1,2,3,["张三","李四","王五"]]
# print("修改前list1:",list1)
# list2=list1.copy()
# list2[3][0]="赵六"
# print("修改后list1:",list1)
# print("list2",list2)

# 冒泡排序
list1=[123,3,4,123,3,123,12,3,12,3]
# 外层循环 长度-1
# 内层循环 长度-1-外层的变量名      leedcode
#  在内层循环中 相邻的元素做比较 ,较大的进行数据交换
l=len(list1)
# count=0
for a in range(l-1):
    for b  in range(l-1-a):
        if list1[b]>list1[b+1]:
            list1[b], list1[b + 1]=list1[b+1],list1[b]
#         count+=1
# print(count)









